Packet-switched networks have become common for transferring many types of data among network nodes. In a packet-switched network, nodes share a communications channel via a virtual circuit, or non-dedicated connection through a shared medium that gives the high-level user the appearance of a dedicated, direct connection from the source node to the destination node. Messages sent over such a network are partitioned into packets, which may contain an amount of data, accompanied by addressing information. Packets are sent from a source node to a destination node one packet at a time as the network hardware delivers the packets through the virtual circuit. Internet Protocol networks operate in this manner, as do Ethernet networks.
In packet-switched networks, and in Ethernet networks in particular, there is a need for redundancy in pathways between source and destination nodes. If there is only one path between a source and destination, and there is a failure of any intermediate node or communication line, then messages cannot be delivered. Multiple active paths between nodes, however, can cause loops in the network. Loops can result in nodes seeing that same packet over and over, thereby degrading network performance. In addition, the packet forwarding algorithms, especially in an Ethernet network, can become confused by loops. For an Ethernet network to function properly, only one active path can exist between two nodes.
One system developed to address these concerns is the Spanning-Tree Protocol. Spanning-Tree Protocol is a link management protocol that provides path redundancy while preventing undesirable loops in the network. To provide path redundancy, Spanning-Tree Protocol defines a tree that spans all switches in an extended network. Spanning-Tree Protocol forces certain redundant data paths into a standby or blocked state. If one network segment in the Spanning-Tree Protocol becomes unreachable, or if Spanning-Tree Protocol costs change, the spanning-tree algorithm reconfigures the spanning-tree topology and reestablishes the link by activating a standby path.
While the Spanning-Tree Protocol provides the benefits of path redundancy and manages the problems created by path redundancy, it still leaves issues to be overcome. In general, a network operated using the Spanning-Tree Protocol must be managed and mapped out by an individual. Even when the protocol can self-configure, often the resulting network configuration is sub-optimal, and optimization can only be achieved by an individual altering the configuration. There is a need in the art for an improved protocol that can configure or reconfigure the network pathways automatically and/or reduce the overhead resulting from network management.